<?php
/*fileName:$inc/baseLib.php 
 *internal version: 0001
 *version : 1.0.0 [programming] [official version]
 *author  : HeShengyu
 *Date    :   
 *email   : koolfer@163.com
 *end date:2014.02.18
 *http://www.cnblogs.com/ssnowy/
*/
if(!function_exists('chFileSlashs')){
function chFileSlashs ($path=""){   
        return preg_replace('/\/{1,}/', '/', str_replace ('\\','/',  $path .'/'));
}}

require_once( chFileSlashs(dirname(__FILE__).'/')  
.'globals.php');

if(!function_exists('secho')){
function secho($array) {
	if(is_array($array)) {
        echo '<pre>';
        print_r($array);
        echo '</pre>';
	} else {
        echo '<br>';
        echo str_replace(array('&', '"', '<', '>'), array('&', '"', '<', '>'), $array);;
        echo '<br>';
	}
}	
}
class Csstring{
    public static function chSlashs ($path=""){   
		if(!is_dir($path)){
	        $path = dirname($path);	
	    } 
        return preg_replace('/\/{1,}/', '/', str_replace ('\\','/',  $path .'/'));
    }
}
class Csdir{
//@param 1 $path         当前目录
//@param 2 $sortingOrder 排序 0升序 1降序
//得到当前目录下的所有文件,返回值类型 Array; 
public static function getFiles($path  , $sortingOrder=0){   

	$path = Csstring::chSlashs($path) ;
	$filesDirs = scandir ($path , $sortingOrder);
	
	$fils=array();
    foreach($filesDirs as $k => $v ){
        if(!is_dir( $path.$v )  ){
            $fils[] =$v ; 
        }
    }	
    return $fils;
}
}

class Crequire{
	//$root指目录 __FILE__
    public $root;
	public $fileUrls= array();
    public function __construct($path=""){
		$this->root=Csstring::chSlashs($path);	
	}
	public function requireOnce($arrOrStr){
			
		//如果是一个文件数组则包含这些文件
		if(is_array($arrOrStr)){
			foreach($arrOrStr as $v){
			    require_once($this->root.$v)  ;
			}	
			return $this;
		}
		
		//如果是目录则包含目录下所有文件
		if(is_dir($this->root.$arrOrStr)){
			$this->requireDirOnce($arrOrStr);
			return $this;		
		}
		
		//如果是文件则包含文件
		if(!empty($arrOrStr)){
			require_once($this->root.$arrOrStr);
		}
		return $this;				
	}
	
	//$suffix 例如等于 "../../"."inc/"
	//通过路径包含php文件一次
	//包含目录下所有文件
	public   function requireDirOnce($suffix=''){	
		$arr=Csdir::getFiles($this->root.'/'.$suffix);		
		foreach($arr as $v){
			if(preg_match("/\.php$/",$v) ){
			    require_once($this->root.$suffix.$v);
				//echo       $this->root.$suffix.$v.'</br>';
			}
		}		
	}
}

?>